Hierarchical Place Trees: A Portable Abstraction for Task Parallelism and Data Movement
نویسندگان
چکیده
Modern computer systems feature multiple homogeneous or heterogeneous computing units with deep memory hierarchies, and expect a high degree of thread-level parallelism from the software. Exploitation of data locality is critical to achieving scalable parallelism, but adds a significant dimension of complexity to performance optimization of parallel programs. This is especially true for programming models where locality is implicit and opaque to programmers. In this paper, we introduce the hierarchical place tree (HPT) model as a portable abstraction for task parallelism and data movement. The HPT model supports co-allocation of data and computation at multiple levels of a memory hierarchy. It can be viewed as a generalization of concepts from the Sequoia and X10 programming models, resulting in capabilities that are not supported by either. Compared to Sequoia, HPT supports three kinds of data movement in a memory hierarchy rather than just explicit data transfer between adjacent levels, as well as dynamic task scheduling rather than static task assignment. Compared to X10, HPT provides a hierarchical notion of places for both computation and data mapping. We describe our work-in-progress on implementing the HPT model in the Habanero-Java (HJ) compiler and runtime system. Preliminary results on general-purpose multicore processors and GPU accelerators indicate that the HPT model can be a promising portable abstraction for future multicore processors.
منابع مشابه
HPVM: A Portable Virtual Instruction Set for Heterogeneous Parallel Systems
We describe a programming abstraction for heterogeneous parallel hardware, designed to capture a wide range of popular parallel hardware, including GPUs, vector instruction sets and multicore CPUs. Our abstraction, which we call HPVM , is a hierarchical dataflow graph with shared memory and vector instructions. We use HPVM to define both a virtual instruction set (ISA) and also a compiler inter...
متن کاملImplementation of a Portable Runtime System Supporting Mixed Task and Data Parallelism
This paper describes the portable implementation of a programming model based on shared objects that integrates task and data parallelism. As a starting point, the implementation uses two existing runtime systems: the Orca runtime system (RTS), for task parallel programming, and Hawk, for data parallel programming. To achieve this portable integration, we implemented the Orca RTS and Hawk on to...
متن کاملUML for Modelling and Performance Estimation of Embedded Systems
In this paper, we would like to present a new UML-based methodology for embedded applications design. Our approach starts from a pure sequential object paradigm model from which a task level model is extracted. The latter allows designer to expose all parallelism forms such as task parallelism, data parallelism, pipelining, while making control and communication over tasks explicit. Another par...
متن کاملIntegrated Support for Task and Data Parallelism
We present an overview of research at the CRPC designed to provide an e cient, portable programmingmodel for scienti c applications possessing both task and data parallelism. Fortran M programs exploit task parallelism by providing language extensions for user-de ned process management and typed communication channels. A combination of compiler and run-time system support ensures modularity, sa...
متن کاملModeling the Bene ts of Mixed Data and Task Parallelism
Mixed task and data parallelism exists naturally in many applications, but utilizing it may require sophisticated scheduling algorithms and software support. Recently, signi cant research e ort has been applied to exploiting mixed parallelism in both theory and systems communities. In this paper, we ask how much mixed parallelism will improve performance in practice, and how architectural evolu...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009